home *** CD-ROM | disk | FTP | other *** search
/ The Very Best of Atari Inside / The Very Best of Atari Inside 1.iso / mint / mnt99pc / diffs next >
Text File  |  1993-01-26  |  27KB  |  938 lines

  1. diff -c -r ..\orig\src/debug.c ./debug.c
  2. *** ..\orig\src/debug.c    Wed Jan 13 11:46:08 1993
  3. --- ./debug.c    Sat Jan 23 14:55:28 1993
  4. ***************
  5. *** 267,273 ****
  6.           key = Bconin(out_device);
  7.           if (out_device == 2) {
  8.               if ((Kbshift(-1) & 0x0c) == 0x0c) {
  9. !             scan = ((key >> 16) & 0xff);
  10.               do_func_key(scan);
  11.               }
  12.               else goto ptoggle;
  13. --- 267,273 ----
  14.           key = Bconin(out_device);
  15.           if (out_device == 2) {
  16.               if ((Kbshift(-1) & 0x0c) == 0x0c) {
  17. !             scan = (int) (((key >> 16) & 0xff));
  18.               do_func_key(scan);
  19.               }
  20.               else goto ptoggle;
  21. ***************
  22. *** 281,287 ****
  23.               else {
  24.               /* digit key from debug device == Fn */
  25.               if (key == '0') scan = 0x44;
  26. !             else scan = key - '0' + 0x3a;
  27.               do_func_key(scan);
  28.               }
  29.           }
  30. --- 281,287 ----
  31.               else {
  32.               /* digit key from debug device == Fn */
  33.               if (key == '0') scan = 0x44;
  34. !             else scan = (int) (key - '0' + 0x3a);
  35.               do_func_key(scan);
  36.               }
  37.           }
  38. ***************
  39. *** 348,354 ****
  40.               if (counter++ >= 29) {
  41.                   if (lastspace) {
  42.                       *lastspace = '|';
  43. !                     counter = ptr - lastspace;
  44.                       lastspace = 0;
  45.                   } else {
  46.                       *ptr = '|';
  47. --- 348,354 ----
  48.               if (counter++ >= 29) {
  49.                   if (lastspace) {
  50.                       *lastspace = '|';
  51. !                     counter = (int) (ptr - lastspace);
  52.                       lastspace = 0;
  53.                   } else {
  54.                       *ptr = '|';
  55. ***************
  56. *** 528,535 ****
  57.       for(;;) {
  58.           /* get a key; if ctl-alt then do it, else halt */
  59.           key = Bconin(out_device);
  60. !         if ((key & 0x0c000000) == 0x0c000000) {
  61. !             scan = ((key >> 16) & 0xff);
  62.               do_func_key(scan);
  63.           }
  64.           else {
  65. --- 528,535 ----
  66.       for(;;) {
  67.           /* get a key; if ctl-alt then do it, else halt */
  68.           key = Bconin(out_device);
  69. !         if ((key & 0x0c000000L) == 0x0c000000L) {
  70. !             scan = (int) ((key >> 16) & 0xff);
  71.               do_func_key(scan);
  72.           }
  73.           else {
  74. diff -c -r ..\orig\src/dosmem.c ./dosmem.c
  75. *** ..\orig\src/dosmem.c    Sun Jan 10 19:50:12 1993
  76. --- ./dosmem.c    Sat Jan 23 15:03:50 1993
  77. ***************
  78. *** 116,123 ****
  79.    */
  80.   
  81.       if (((mode & F_PROTMODE) == 0) &&
  82. !         (curproc->ctxt[SYSCALL].pc > 0x00e00000) &&
  83. !         (curproc->ctxt[SYSCALL].pc < 0x00efffff)) {
  84.           mode |= (F_PROT_S + 0x10) | F_KEEP;
  85.           TRACE(("m_xalloc: VDI special (call from ROM)"));
  86.       }
  87. --- 116,123 ----
  88.    */
  89.   
  90.       if (((mode & F_PROTMODE) == 0) &&
  91. !         (curproc->ctxt[SYSCALL].pc > 0x00e00000L) &&
  92. !         (curproc->ctxt[SYSCALL].pc < 0x00efffffL)) {
  93.           mode |= (F_PROT_S + 0x10) | F_KEEP;
  94.           TRACE(("m_xalloc: VDI special (call from ROM)"));
  95.       }
  96. ***************
  97. *** 478,484 ****
  98.            * Here's where we change the protection on the environment to
  99.            * match those flags.
  100.            */
  101. !         mark_region(env,((flags & F_PROTMODE) >> F_PROTSHIFT));
  102.       }
  103.   
  104.       if (p) {
  105. --- 478,484 ----
  106.            * Here's where we change the protection on the environment to
  107.            * match those flags.
  108.            */
  109. !         mark_region(env,(short)((flags & F_PROTMODE) >> F_PROTSHIFT));
  110.       }
  111.   
  112.       if (p) {
  113. diff -c -r ..\orig\src/intr.spp ./intr.spp
  114. *** ..\orig\src/intr.spp    Wed Dec 23 12:48:20 1992
  115. --- ./intr.spp    Sat Jan 23 15:10:58 1993
  116. ***************
  117. *** 290,300 ****
  118.   _new_addr:
  119.       move.w    #$c,_sig_exc
  120.       move.l    #_sigaddr,_sig_routine
  121. !     bra.s    Do_sig
  122.   _new_ill:
  123.       move.w    #$10,_sig_exc
  124.       move.l    #_sigill,_sig_routine
  125. !     bra.s    Do_sig            ; ASM pre-5.52.3 barfs on this :-(
  126.   _new_divzero:
  127.       move.w    #$14,_sig_exc
  128.       move.l    #_sigfpe,_sig_routine
  129. --- 290,300 ----
  130.   _new_addr:
  131.       move.w    #$c,_sig_exc
  132.       move.l    #_sigaddr,_sig_routine
  133. !     bra        Do_sig
  134.   _new_ill:
  135.       move.w    #$10,_sig_exc
  136.       move.l    #_sigill,_sig_routine
  137. !     bra        Do_sig            ; ASM pre-5.52.3 barfs on this :-( (jr: PASM. too!)
  138.   _new_divzero:
  139.       move.w    #$14,_sig_exc
  140.       move.l    #_sigfpe,_sig_routine
  141. diff -c -r ..\orig\src/main.c ./main.c
  142. *** ..\orig\src/main.c    Wed Jan 20 15:26:40 1993
  143. --- ./main.c    Sat Jan 23 15:08:52 1993
  144. ***************
  145. *** 18,26 ****
  146.   /* magic number to show that we have captured the reset vector */
  147.   #define RES_MAGIC 0x31415926L
  148.   
  149. ! static void xbra_install P_((xbra_vec *, long, void (*)()));
  150.   static void init_intr P_((void));
  151. ! static void getmch P_((void));
  152.   static void do_line P_((char *));
  153.   static void shutmedown P_((PROC *));
  154.   void shutdown P_((void));
  155. --- 18,26 ----
  156.   /* magic number to show that we have captured the reset vector */
  157.   #define RES_MAGIC 0x31415926L
  158.   
  159. ! static void xbra_install P_((xbra_vec *, long, long ARGS_ON_STACK (*)()));
  160.   static void init_intr P_((void));
  161. ! static long getmch P_((void));
  162.   static void do_line P_((char *));
  163.   static void shutmedown P_((PROC *));
  164.   void shutdown P_((void));
  165. ***************
  166. *** 219,225 ****
  167.   xbra_install(xv, addr, func)
  168.       xbra_vec *xv;
  169.       long addr;
  170. !     void (*func)();
  171.   {
  172.       xv->xbra_magic = XBRA_MAGIC;
  173.       xv->xbra_id = MINT_MAGIC;
  174. --- 219,225 ----
  175.   xbra_install(xv, addr, func)
  176.       xbra_vec *xv;
  177.       long addr;
  178. !     long ARGS_ON_STACK (*func)();
  179.   {
  180.       xv->xbra_magic = XBRA_MAGIC;
  181.       xv->xbra_id = MINT_MAGIC;
  182. ***************
  183. *** 263,270 ****
  184.    * bus error right after the Mshrink call!
  185.    */
  186.       setstack(basepage+500L);
  187.       Mshrink(basepage, 512L);
  188. !     r = Pexec(200, init_prg, init_tail, init_env);
  189.       Pterm(r);
  190.   }
  191.   
  192. --- 263,274 ----
  193.    * bus error right after the Mshrink call!
  194.    */
  195.       setstack(basepage+500L);
  196. + #ifdef __TURBOC__
  197. +     Mshrink(0, (void *)basepage, 512L);
  198. + #else
  199.       Mshrink(basepage, 512L);
  200. ! #endif
  201. !     r = (int) Pexec(200, init_prg, init_tail, init_env);
  202.       Pterm(r);
  203.   }
  204.   
  205. ***************
  206. *** 278,291 ****
  207.   static void
  208.   init_intr()
  209.   {
  210. !     extern void mint_bios(), mint_dos(), mint_timer(), mint_vbl();
  211. !     extern void mint_5ms();        /* AKP */
  212. !     extern void mint_xbios(), reset();
  213. !     extern void new_ikbd();
  214. !       extern void new_bus(), new_addr(), new_ill(), new_divzero(),
  215. !         new_trace(), new_priv(), new_linef(), new_chk(), new_trapv(),
  216. !         new_fpcp(), new_mmu(), new_format(), new_cpv(), new_uninit(),
  217. !         new_spurious(), new_pmmuacc();
  218.       short savesr;
  219.       int i;
  220.   
  221. --- 282,311 ----
  222.   static void
  223.   init_intr()
  224.   {
  225. !     extern long ARGS_ON_STACK mint_bios();
  226. !     extern long ARGS_ON_STACK mint_dos();
  227. !     extern long ARGS_ON_STACK mint_timer();
  228. !     extern long ARGS_ON_STACK mint_vbl();
  229. !     extern long ARGS_ON_STACK mint_5ms();
  230. !     extern long ARGS_ON_STACK mint_xbios();
  231. !     extern long ARGS_ON_STACK reset();
  232. !       extern long ARGS_ON_STACK new_ikbd();
  233. !       extern long ARGS_ON_STACK new_bus();
  234. !       extern long ARGS_ON_STACK new_addr();
  235. !       extern long ARGS_ON_STACK new_ill();
  236. !       extern long ARGS_ON_STACK new_divzero();
  237. !       extern long ARGS_ON_STACK new_trace();
  238. !       extern long ARGS_ON_STACK new_priv();
  239. !       extern long ARGS_ON_STACK new_linef();
  240. !       extern long ARGS_ON_STACK new_chk();
  241. !       extern long ARGS_ON_STACK new_trapv();
  242. !       extern long ARGS_ON_STACK new_fpcp();
  243. !       extern long ARGS_ON_STACK new_mmu();
  244. !       extern long ARGS_ON_STACK new_format();
  245. !       extern long ARGS_ON_STACK new_cpv();
  246. !       extern long ARGS_ON_STACK new_uninit();
  247. !       extern long ARGS_ON_STACK new_spurious();
  248. !       extern long ARGS_ON_STACK new_pmmuacc();
  249.       short savesr;
  250.       int i;
  251.   
  252. ***************
  253. *** 309,315 ****
  254.       save_xbios = (long)old_xbios.next;
  255.   
  256.       xbra_install(&old_timer, 0x400L, mint_timer);
  257. !     xbra_install(&old_criticerr, 0x404L, (void (*)())mint_criticerr);
  258.       xbra_install(&old_5ms, 0x114L, mint_5ms);
  259.       xbra_install(&old_vbl, 4*0x1cL, mint_vbl);
  260.       xbra_install(&old_resvec, 0x42aL, reset);
  261. --- 329,335 ----
  262.       save_xbios = (long)old_xbios.next;
  263.   
  264.       xbra_install(&old_timer, 0x400L, mint_timer);
  265. !     xbra_install(&old_criticerr, 0x404L, mint_criticerr);
  266.       xbra_install(&old_5ms, 0x114L, mint_5ms);
  267.       xbra_install(&old_vbl, 4*0x1cL, mint_vbl);
  268.       xbra_install(&old_resvec, 0x42aL, reset);
  269. ***************
  270. *** 343,351 ****
  271.   #endif
  272.   
  273.   /* set up disk vectors */
  274. !     xbra_install(&old_mediach, 0x47eL, (void (*)())new_mediach);
  275. !     xbra_install(&old_rwabs, 0x476L, (void (*)())new_rwabs);
  276. !     xbra_install(&old_getbpb, 0x472L, (void (*)())new_getbpb);
  277.       olddrvs = *((long *)0x4c2L);
  278.   
  279.   /* set up cookie jar */
  280. --- 363,371 ----
  281.   #endif
  282.   
  283.   /* set up disk vectors */
  284. !     xbra_install(&old_mediach, 0x47eL, new_mediach);
  285. !     xbra_install(&old_rwabs, 0x476L, new_rwabs);
  286. !     xbra_install(&old_getbpb, 0x472L, new_getbpb);
  287.       olddrvs = *((long *)0x4c2L);
  288.   
  289.   /* set up cookie jar */
  290. ***************
  291. *** 792,798 ****
  292.    * called GEM.SYS, take the exec_os() vector
  293.    */
  294.       if (!gem_active && init_is_gemsys) {
  295. !         xbra_install(&old_execos, EXEC_OS, do_exec_os);
  296.       }
  297.   
  298.   /* run any programs appearing after us in the AUTO folder */
  299. --- 812,818 ----
  300.    * called GEM.SYS, take the exec_os() vector
  301.    */
  302.       if (!gem_active && init_is_gemsys) {
  303. !         xbra_install(&old_execos, EXEC_OS, (long ARGS_ON_STACK (*)())do_exec_os);
  304.       }
  305.   
  306.   /* run any programs appearing after us in the AUTO folder */
  307. ***************
  308. *** 954,960 ****
  309.    * jar we can bail out early and painlessly.
  310.    */
  311.   
  312. ! static void
  313.   getmch()
  314.   {
  315.       COOKIE *jar;
  316. --- 974,980 ----
  317.    * jar we can bail out early and painlessly.
  318.    */
  319.   
  320. ! static long
  321.   getmch()
  322.   {
  323.       COOKIE *jar;
  324. ***************
  325. *** 979,985 ****
  326.                   Cconws("MiNT is already installed!!\r\n");
  327.                   Pterm(2);
  328.               } else if (!strncmp(jar->tag.aschar, "_AKP",4)) {
  329. !                 gl_lang = (jar->value >> 8) & 0x00ff;
  330.               }
  331.               jar++;
  332.           }
  333. --- 999,1005 ----
  334.                   Cconws("MiNT is already installed!!\r\n");
  335.                   Pterm(2);
  336.               } else if (!strncmp(jar->tag.aschar, "_AKP",4)) {
  337. !                 gl_lang = (int) ((jar->value >> 8) & 0x00ff);
  338.               }
  339.               jar++;
  340.           }
  341. ***************
  342. *** 991,997 ****
  343.       if (gl_lang < 0) {
  344.           sysbase = *((long **)(0x4f2L)); /* gets the RAM OS header */
  345.           sysbase = (long *)sysbase[2];    /* gets the ROM one */
  346. !         i = (sysbase[7] & 0x7ffe0000L) >> 17L;
  347.           switch(i) {
  348.           case 1:        /* Germany */
  349.           case 8:        /* Swiss German */
  350. --- 1011,1017 ----
  351.       if (gl_lang < 0) {
  352.           sysbase = *((long **)(0x4f2L)); /* gets the RAM OS header */
  353.           sysbase = (long *)sysbase[2];    /* gets the ROM one */
  354. !         i = (int) ((sysbase[7] & 0x7ffe0000L) >> 17L);
  355.           switch(i) {
  356.           case 1:        /* Germany */
  357.           case 8:        /* Swiss German */
  358. ***************
  359. *** 1012,1017 ****
  360. --- 1032,1039 ----
  361.               break;
  362.           }
  363.       }
  364. +     
  365. +     return 0L;
  366.   }
  367.   
  368.   /*
  369. diff -c -r ..\orig\src/mem.c ./mem.c
  370. *** ..\orig\src/mem.c    Wed Dec 23 12:45:06 1992
  371. --- ./mem.c    Sat Jan 23 14:30:26 1993
  372. ***************
  373. *** 89,101 ****
  374.   
  375.           if (r) {
  376.               quickmove((char *)r->loc, (char *)scrnplace, scrnsize);
  377. !             Setscreen(r->loc, r->loc, -1);
  378.               Vsync();
  379.               quickmove((char *)newbase, (char *)r->loc, scrnsize);
  380.           } else {
  381.               quickmove((char *)newbase, (char *)scrnplace, scrnsize);
  382.           }
  383. !         Setscreen(newbase, newbase, -1);
  384.       /* fix the cursor */
  385.           Cconws("\r\n"); 
  386.       }
  387. --- 89,101 ----
  388.   
  389.           if (r) {
  390.               quickmove((char *)r->loc, (char *)scrnplace, scrnsize);
  391. !             Setscreen((void *)r->loc, (void *)r->loc, -1);
  392.               Vsync();
  393.               quickmove((char *)newbase, (char *)r->loc, scrnsize);
  394.           } else {
  395.               quickmove((char *)newbase, (char *)scrnplace, scrnsize);
  396.           }
  397. !         Setscreen((void *)newbase, (void *)newbase, -1);
  398.       /* fix the cursor */
  399.           Cconws("\r\n"); 
  400.       }
  401. ***************
  402. *** 1306,1312 ****
  403.    * also put "p" on the appropriate queue (most likely READY_Q).
  404.    */
  405.   
  406. ! extern long mint_dos(), mint_bios();
  407.   
  408.   void rts() {}        /* dummy termination routine */
  409.   
  410. --- 1306,1312 ----
  411.    * also put "p" on the appropriate queue (most likely READY_Q).
  412.    */
  413.   
  414. ! extern long ARGS_ON_STACK mint_dos(), mint_bios();
  415.   
  416.   void rts() {}        /* dummy termination routine */
  417.   
  418. ***************
  419. *** 1596,1601 ****
  420. --- 1596,1603 ----
  421.               m->links, m->next);
  422.           m = m->next;
  423.       }
  424. + #else
  425. +     UNUSED(map);
  426.   #endif
  427.   }
  428.   
  429. diff -c -r ..\orig\src/mem.h ./mem.h
  430. *** ..\orig\src/mem.h    Wed Dec 23 12:45:12 1992
  431. --- ./mem.h    Sat Jan 23 13:15:38 1993
  432. ***************
  433. *** 155,162 ****
  434.   
  435.   typedef struct {
  436.       short limit;
  437. !     ushort zeros:14;
  438. !     ushort dt:2;
  439.       struct long_desc *tbl_address;
  440.   } crp_reg;
  441.   
  442. --- 155,162 ----
  443.   
  444.   typedef struct {
  445.       short limit;
  446. !     unsigned zeros:14;
  447. !     unsigned dt:2;
  448.       struct long_desc *tbl_address;
  449.   } crp_reg;
  450.   
  451. ***************
  452. *** 163,179 ****
  453.   /* format of long descriptors, both page descriptors and table descriptors */
  454.   
  455.   typedef struct {
  456. !     ushort limit;        /* set to $7fff to disable */
  457. !     ushort unused1:6;
  458. !     ushort unused2:1;
  459. !     ushort s:1;        /* 1 grants supervisor access only */
  460. !     ushort unused3:1;
  461. !     ushort ci:1;        /* cache inhibit: used in page desc only */
  462. !     ushort unused4:1;
  463. !     ushort m:1;        /* modified: used in page desc only */
  464. !     ushort u:1;        /* accessed */
  465. !     ushort wp:1;        /* write-protected */
  466. !     ushort dt:2;        /* type */
  467.   } page_type;
  468.   
  469.   typedef struct long_desc {
  470. --- 163,179 ----
  471.   /* format of long descriptors, both page descriptors and table descriptors */
  472.   
  473.   typedef struct {
  474. !     unsigned limit;        /* set to $7fff to disable */
  475. !     unsigned unused1:6;
  476. !     unsigned unused2:1;
  477. !     unsigned s:1;        /* 1 grants supervisor access only */
  478. !     unsigned unused3:1;
  479. !     unsigned ci:1;        /* cache inhibit: used in page desc only */
  480. !     unsigned unused4:1;
  481. !     unsigned m:1;        /* modified: used in page desc only */
  482. !     unsigned u:1;        /* accessed */
  483. !     unsigned wp:1;        /* write-protected */
  484. !     unsigned dt:2;        /* type */
  485.   } page_type;
  486.   
  487.   typedef struct long_desc {
  488. ***************
  489. *** 182,197 ****
  490.   } long_desc;
  491.   
  492.   typedef struct {
  493. !     ushort enable:1;
  494. !     ushort zeros:5;
  495. !     ushort sre:1;
  496. !     ushort fcl:1;
  497. !     ushort ps:4;
  498. !     ushort is:4;
  499. !     ushort tia:4;
  500. !     ushort tib:4;
  501. !     ushort tic:4;
  502. !     ushort tid:4;
  503.   } tc_reg;
  504.   
  505.   #endif /* _mem_h */
  506. --- 182,197 ----
  507.   } long_desc;
  508.   
  509.   typedef struct {
  510. !     unsigned enable:1;
  511. !     unsigned zeros:5;
  512. !     unsigned sre:1;
  513. !     unsigned fcl:1;
  514. !     unsigned ps:4;
  515. !     unsigned is:4;
  516. !     unsigned tia:4;
  517. !     unsigned tib:4;
  518. !     unsigned tic:4;
  519. !     unsigned tid:4;
  520.   } tc_reg;
  521.   
  522.   #endif /* _mem_h */
  523. diff -c -r ..\orig\src/memprot.c ./memprot.c
  524. *** ..\orig\src/memprot.c    Wed Dec 23 12:45:22 1992
  525. --- ./memprot.c    Sat Jan 23 14:55:38 1993
  526. ***************
  527. *** 192,201 ****
  528.   #define phys_top_st (*(ulong *)0x42eL)
  529.       mint_top_st = phys_top_st;
  530.   
  531. !     if (mint_top_tt) tt_mbytes = (mint_top_tt - 0x01000000) / ONE_MEG;
  532. !     else tt_mbytes = 0;
  533.   
  534. !     n_megabytes = (mint_top_st / ONE_MEG) + tt_mbytes;
  535.   
  536.       /*
  537.        * page table size: room for A table, B0 table, BF table, STRAM C
  538. --- 192,203 ----
  539.   #define phys_top_st (*(ulong *)0x42eL)
  540.       mint_top_st = phys_top_st;
  541.   
  542. !     if (mint_top_tt)
  543. !         tt_mbytes = (int) ((mint_top_tt - 0x01000000L) / ONE_MEG);
  544. !     else
  545. !         tt_mbytes = 0;
  546.   
  547. !     n_megabytes = (int) ((mint_top_st / ONE_MEG) + tt_mbytes);
  548.   
  549.       /*
  550.        * page table size: room for A table, B0 table, BF table, STRAM C
  551. ***************
  552. *** 327,333 ****
  553.           return 1;
  554.       }
  555.       }
  556. !     else if (start >= 0x01000000 && start < mint_top_tt) {
  557.       /* start is in TT RAM; fail if not entirely in TT RAM */
  558.       if (start+len > mint_top_tt) {
  559.           return 1;
  560. --- 329,335 ----
  561.           return 1;
  562.       }
  563.       }
  564. !     else if (start >= 0x01000000L && start < mint_top_tt) {
  565.       /* start is in TT RAM; fail if not entirely in TT RAM */
  566.       if (start+len > mint_top_tt) {
  567.           return 1;
  568. ***************
  569. *** 334,342 ****
  570.       }
  571.       }
  572.   
  573. !     b_index = (start >> LOG2_16_MEG);
  574. !     c_index = (start >> LOG2_ONE_MEG) & 0xf;
  575. !     d_index = (start >> LOG2_EIGHT_K) & 0x7f;
  576.   
  577.       tbl = &(base_tbl[0].
  578.           tbl_address[b_index].
  579. --- 336,344 ----
  580.       }
  581.       }
  582.   
  583. !     b_index = (int)(start >> LOG2_16_MEG);
  584. !     c_index = (int)(start >> LOG2_ONE_MEG) & 0xf;
  585. !     d_index = (int)(start >> LOG2_EIGHT_K) & 0x7f;
  586.   
  587.       tbl = &(base_tbl[0].
  588.           tbl_address[b_index].
  589. ***************
  590. *** 360,368 ****
  591.        * c_index is the 1MB number of that page within the 16MB (0-15)
  592.        * d_index is the 8K number within that 1MB (0-127).
  593.        */
  594. !     b_index = (start >> LOG2_16_MEG);
  595. !     c_index = (start >> LOG2_ONE_MEG) & 0xf;
  596. !     d_index = (start >> LOG2_EIGHT_K) & 0x7f;
  597.   
  598.       tbl = base_tbl;            /* tbl := start of A table  */
  599.       tbl = tbl[0].tbl_address;    /*           B table  */
  600. --- 362,370 ----
  601.        * c_index is the 1MB number of that page within the 16MB (0-15)
  602.        * d_index is the 8K number within that 1MB (0-127).
  603.        */
  604. !     b_index = (int)(start >> LOG2_16_MEG);
  605. !     c_index = (int)(start >> LOG2_ONE_MEG) & 0xf;
  606. !     d_index = (int)(start >> LOG2_EIGHT_K) & 0x7f;
  607.   
  608.       tbl = base_tbl;            /* tbl := start of A table  */
  609.       tbl = tbl[0].tbl_address;    /*           B table  */
  610. ***************
  611. *** 444,452 ****
  612.        * c_index is the 1MB number of that page within the 16MB (0-15)
  613.        * d_index is the 8K number within that 1MB (0-127).
  614.        */
  615. !     b_index = (start >> LOG2_16_MEG);
  616. !     c_index = (start >> LOG2_ONE_MEG) & 0xf;
  617. !     d_index = (start >> LOG2_EIGHT_K) & 0x7f;
  618.   
  619.       tbl = base_tbl;            /* tbl := start of A table  */
  620.       tbl = tbl[0].tbl_address;    /*           B table  */
  621. --- 446,454 ----
  622.        * c_index is the 1MB number of that page within the 16MB (0-15)
  623.        * d_index is the 8K number within that 1MB (0-127).
  624.        */
  625. !     b_index = (int)(start >> LOG2_16_MEG);
  626. !     c_index = (int)(start >> LOG2_ONE_MEG) & 0xf;
  627. !     d_index = (int)(start >> LOG2_EIGHT_K) & 0x7f;
  628.   
  629.       tbl = base_tbl;            /* tbl := start of A table  */
  630.       tbl = tbl[0].tbl_address;    /*           B table  */
  631. ***************
  632. *** 529,535 ****
  633.           MP_DEBUG(("mark_region: pid %d is an OS special!",proc->pid));
  634.           goto owner;
  635.       }
  636. !     if (mr = proc->mem) {
  637.           for (i = 0; i < proc->num_reg; i++, mr++) {
  638.           if (*mr == region) {
  639.               MP_DEBUG(("mark_region: pid %d is an owner",proc->pid));
  640. --- 531,537 ----
  641.           MP_DEBUG(("mark_region: pid %d is an OS special!",proc->pid));
  642.           goto owner;
  643.       }
  644. !     if (0 != (mr = proc->mem)) {
  645.           for (i = 0; i < proc->num_reg; i++, mr++) {
  646.           if (*mr == region) {
  647.               MP_DEBUG(("mark_region: pid %d is an owner",proc->pid));
  648. ***************
  649. *** 676,682 ****
  650.       tptr += TBL_SIZE;
  651.   
  652.       /* for each megabyte that is RAM, allocate a table */
  653. !     for (i = 0, k = 0, p = 0; p < mint_top_st; i++, p += 0x00100000) {
  654.       tbl_c[i].page_type = page_ptr;
  655.       tbl_c[i].tbl_address = tptr;
  656.   
  657. --- 678,684 ----
  658.       tptr += TBL_SIZE;
  659.   
  660.       /* for each megabyte that is RAM, allocate a table */
  661. !     for (i = 0, k = 0, p = 0; p < mint_top_st; i++, p += 0x00100000L) {
  662.       tbl_c[i].page_type = page_ptr;
  663.       tbl_c[i].tbl_address = tptr;
  664.   
  665. ***************
  666. *** 689,695 ****
  667.       }
  668.   
  669.       /* now for each megabyte from mint_top_st to ROM, mark global */
  670. !     for ( ; p < 0x00E00000; i++, p += 0x00100000) {
  671.       tbl_c[i].page_type = g_page;
  672.       tbl_c[i].tbl_address = (long_desc *)p;
  673.       }
  674. --- 691,697 ----
  675.       }
  676.   
  677.       /* now for each megabyte from mint_top_st to ROM, mark global */
  678. !     for ( ; p < 0x00E00000L; i++, p += 0x00100000L) {
  679.       tbl_c[i].page_type = g_page;
  680.       tbl_c[i].tbl_address = (long_desc *)p;
  681.       }
  682. ***************
  683. *** 697,703 ****
  684.       /* fill in the E and F tables: 00Ex is ROM, 00Fx is I/O  */
  685.       tbl_c[i].page_type = g_page;
  686.       tbl_c[i].tbl_address = (long_desc *)p;
  687. !     i++, p += 0x00100000;
  688.       tbl_c[i].page_type = g_ci_page;
  689.       tbl_c[i].tbl_address = (long_desc *)p;
  690.   
  691. --- 699,705 ----
  692.       /* fill in the E and F tables: 00Ex is ROM, 00Fx is I/O  */
  693.       tbl_c[i].page_type = g_page;
  694.       tbl_c[i].tbl_address = (long_desc *)p;
  695. !     i++, p += 0x00100000L;
  696.       tbl_c[i].page_type = g_ci_page;
  697.       tbl_c[i].tbl_address = (long_desc *)p;
  698.   
  699. ***************
  700. *** 723,729 ****
  701.   */
  702.   
  703.       /* i counts 16MBs */
  704. !     for (i = 1, p = 0x01000000, g = 2048;
  705.        p < mint_top_tt;
  706.        p += SIXTEEN_MEG, i++) {
  707.           tbl_b0[i].page_type = page_ptr;
  708. --- 725,731 ----
  709.   */
  710.   
  711.       /* i counts 16MBs */
  712. !     for (i = 1, p = 0x01000000L, g = 2048;
  713.        p < mint_top_tt;
  714.        p += SIXTEEN_MEG, i++) {
  715.           tbl_b0[i].page_type = page_ptr;
  716. ***************
  717. *** 770,776 ****
  718.   
  719.       for (i=0; i<0xf; i++) {
  720.       tbl_bf[i].page_type = g_ci_page;
  721. !     tbl_bf[i].tbl_address = (long_desc *)((i << 24) | 0xf0000000);
  722.       }
  723.       tbl_bf[0xf] = tbl_b0[0];
  724.       *(ulong *)(&(tbl_bf[0xf].tbl_address)) |= 1;
  725. --- 772,778 ----
  726.   
  727.       for (i=0; i<0xf; i++) {
  728.       tbl_bf[i].page_type = g_ci_page;
  729. !     tbl_bf[i].tbl_address = (long_desc *)((i << 24) | 0xf0000000L);
  730.       }
  731.       tbl_bf[0xf] = tbl_b0[0];
  732.       *(ulong *)(&(tbl_bf[0xf].tbl_address)) |= 1;
  733. ***************
  734. *** 830,837 ****
  735.       mark_pages(proc->page_table,0,mint_top_st,1,0,0,proc);
  736.       if (mint_top_tt) {
  737.       mark_pages(proc->page_table,
  738. !             0x01000000,
  739. !             mint_top_tt - 0x01000000,
  740.               1,0,0,
  741.               proc);
  742.       }
  743. --- 832,839 ----
  744.       mark_pages(proc->page_table,0,mint_top_st,1,0,0,proc);
  745.       if (mint_top_tt) {
  746.       mark_pages(proc->page_table,
  747. !             0x01000000L,
  748. !             mint_top_tt - 0x01000000L,
  749.               1,0,0,
  750.               proc);
  751.       }
  752. diff -c -r ..\orig\src/nalloc2.c ./nalloc2.c
  753. *** ..\orig\src/nalloc2.c    Wed Dec 23 12:45:32 1992
  754. --- ./nalloc2.c    Sat Jan 23 13:35:26 1993
  755. ***************
  756. *** 25,31 ****
  757.   #define NALLOC_DEBUG(c) /* nothing */
  758.   #endif
  759.   
  760. ! #define NKMAGIC 0x19870425
  761.   
  762.   /*
  763.    * block header: every memory block has one.
  764. --- 25,31 ----
  765.   #define NALLOC_DEBUG(c) /* nothing */
  766.   #endif
  767.   
  768. ! #define NKMAGIC 0x19870425L
  769.   
  770.   /*
  771.    * block header: every memory block has one.
  772. diff -c -r ..\orig\src/proto.h ./proto.h
  773. *** ..\orig\src/proto.h    Wed Dec 23 12:46:08 1992
  774. --- ./proto.h    Sat Jan 23 13:34:14 1993
  775. ***************
  776. *** 342,352 ****
  777.   int ARGS_ON_STACK ksprintf P_((char *, const char *, ...));
  778.   void debug_ws P_((const char *s));
  779.   int _ALERT P_((char *));
  780. ! void Tracelow P_((const char *s, ...));
  781.   void ARGS_ON_STACK Trace P_((const char *s, ...));
  782.   void ARGS_ON_STACK Debug P_((const char *s, ...));
  783.   void ARGS_ON_STACK ALERT P_((const char *s, ...));
  784. ! void FORCE P_((const char *s, ...));
  785.   EXITING void ARGS_ON_STACK FATAL P_((const char *s, ...));
  786.   EXITING void HALT P_((void));
  787.   void DUMPLOG P_((void));
  788. --- 342,352 ----
  789.   int ARGS_ON_STACK ksprintf P_((char *, const char *, ...));
  790.   void debug_ws P_((const char *s));
  791.   int _ALERT P_((char *));
  792. ! void ARGS_ON_STACK Tracelow P_((const char *s, ...));
  793.   void ARGS_ON_STACK Trace P_((const char *s, ...));
  794.   void ARGS_ON_STACK Debug P_((const char *s, ...));
  795.   void ARGS_ON_STACK ALERT P_((const char *s, ...));
  796. ! void ARGS_ON_STACK FORCE P_((const char *s, ...));
  797.   EXITING void ARGS_ON_STACK FATAL P_((const char *s, ...));
  798.   EXITING void HALT P_((void));
  799.   void DUMPLOG P_((void));
  800. diff -c -r ..\orig\src/realloc.c ./realloc.c
  801. *** ..\orig\src/realloc.c    Wed Dec 23 12:46:16 1992
  802. --- ./realloc.c    Sat Jan 23 13:36:00 1993
  803. ***************
  804. *** 243,249 ****
  805.   
  806.   #define PAD 256L
  807.   
  808. ! long
  809.   s_realloc(size)
  810.       long size;
  811.   {
  812. --- 243,249 ----
  813.   
  814.   #define PAD 256L
  815.   
  816. ! long ARGS_ON_STACK
  817.   s_realloc(size)
  818.       long size;
  819.   {
  820. diff -c -r ..\orig\src/sproto.h ./sproto.h
  821. *** ..\orig\src/sproto.h    Wed Jan 20 15:22:32 1993
  822. --- ./sproto.h    Sat Jan 23 15:08:26 1993
  823. ***************
  824. *** 17,25 ****
  825.   void ARGS_ON_STACK reboot P_((void));
  826.   short ARGS_ON_STACK spl7 P_((void));
  827.   void ARGS_ON_STACK spl P_((short));
  828. ! void ARGS_ON_STACK new_rwabs();
  829. ! void ARGS_ON_STACK new_mediach();
  830. ! void ARGS_ON_STACK new_getbpb();
  831.   
  832.   /* quickzer.s */
  833.   void ARGS_ON_STACK quickzero P_((char *place, long size));
  834. --- 17,25 ----
  835.   void ARGS_ON_STACK reboot P_((void));
  836.   short ARGS_ON_STACK spl7 P_((void));
  837.   void ARGS_ON_STACK spl P_((short));
  838. ! long ARGS_ON_STACK new_rwabs();
  839. ! long ARGS_ON_STACK new_mediach();
  840. ! long ARGS_ON_STACK new_getbpb();
  841.   
  842.   /* quickzer.s */
  843.   void ARGS_ON_STACK quickzero P_((char *place, long size));
  844. diff -c -r ..\orig\src/syscall.spp ./syscall.spp
  845. *** ..\orig\src/syscall.spp    Wed Jan 20 15:22:22 1993
  846. --- ./syscall.spp    Sat Jan 23 15:17:36 1993
  847. ***************
  848. *** 58,63 ****
  849. --- 58,64 ----
  850.       XREF    _curproc
  851.       XREF    _bios_tab,_bios_max
  852.       XREF    _xbios_tab,_xbios_max
  853. +     XREF    _old_xbios
  854.       XREF    _dos_tab,_dos_max
  855.   
  856.       XREF    _bconbuf,_bconbsiz,_bconbdev
  857. diff -c -r ..\orig\src/util.c ./util.c
  858. *** ..\orig\src/util.c    Wed Dec 23 12:47:42 1992
  859. --- ./util.c    Sat Jan 23 13:32:02 1993
  860. ***************
  861. *** 108,115 ****
  862.    */
  863.   
  864.   #define KERMEM_THRESHOLD QUANTUM-8
  865. ! #define KMAGIC ((MEMREGION *)0x87654321)
  866. ! #define NKMAGIC 0x19870425
  867.   
  868.   void * ARGS_ON_STACK 
  869.   kmalloc(size)
  870. --- 108,115 ----
  871.    */
  872.   
  873.   #define KERMEM_THRESHOLD QUANTUM-8
  874. ! #define KMAGIC ((MEMREGION *)0x87654321L)
  875. ! #define NKMAGIC 0x19870425L
  876.   
  877.   void * ARGS_ON_STACK 
  878.   kmalloc(size)
  879. ***************
  880. *** 142,149 ****
  881.           DEBUG(("kmalloc(%lx): nalloc is out of memory",size));
  882.   
  883.       /* If this is commented out, then we fall through to try_getregion */
  884. !         if (!(m = get_region(alt, QUANTUM, PROT_S))) {
  885. !             if (!(m = get_region(core, QUANTUM, PROT_S))) {
  886.               DEBUG(("No memory for another arena"));
  887.               goto try_getregion;
  888.               }
  889. --- 142,149 ----
  890.           DEBUG(("kmalloc(%lx): nalloc is out of memory",size));
  891.   
  892.       /* If this is commented out, then we fall through to try_getregion */
  893. !         if (0 == (m = get_region(alt, QUANTUM, PROT_S))) {
  894. !             if (0 == (m = get_region(core, QUANTUM, PROT_S))) {
  895.               DEBUG(("No memory for another arena"));
  896.               goto try_getregion;
  897.               }
  898. diff -c -r ..\orig\src/welcome.c ./welcome.c
  899. *** ..\orig\src/welcome.c    Sun Jan 10 15:32:58 1993
  900. --- ./welcome.c    Sat Jan 23 13:35:44 1993
  901. ***************
  902. *** 66,72 ****
  903.           gl_lang = 0;
  904.       msg = &boot_it[gl_lang];
  905.       Cconws(msg->message);
  906. !     y = Cconin();
  907.       if (tolower(y) == msg->yes_let)
  908.           return 1;
  909.       else
  910. --- 66,72 ----
  911.           gl_lang = 0;
  912.       msg = &boot_it[gl_lang];
  913.       Cconws(msg->message);
  914. !     y = (int) Cconin();
  915.       if (tolower(y) == msg->yes_let)
  916.           return 1;
  917.       else
  918. diff -c -r ..\orig\src/xbra.h ./xbra.h
  919. *** ..\orig\src/xbra.h    Wed Dec 23 12:48:04 1992
  920. --- ./xbra.h    Sat Jan 23 15:04:00 1993
  921. ***************
  922. *** 4,10 ****
  923.       long        xbra_id;
  924.       struct xbra    *next;
  925.       short        jump;
  926. !     void        (*this)();
  927.   } xbra_vec;
  928.   
  929.   #define XBRA_MAGIC    0x58425241L /* "XBRA" */
  930. --- 4,10 ----
  931.       long        xbra_id;
  932.       struct xbra    *next;
  933.       short        jump;
  934. !     long ARGS_ON_STACK (*this)();
  935.   } xbra_vec;
  936.   
  937.   #define XBRA_MAGIC    0x58425241L /* "XBRA" */
  938.